using System;
using Gadgeteer.Interfaces.Timed;

namespace Gadgeteer.Interfaces.Timed
{
    public interface ITimerFactory
    {
        ITimer Create(int intervalMiliseconds);
        ITimer Create(int intervalMiliseconds, TimerBehavior behavior);
        ITimer Create(int dueIn, int intervalMiliseconds, TimerBehavior behavior);
        ITimer Create(TimeSpan interval);
        ITimer Create(TimeSpan interval, TimerBehavior behavior);
        ITimer Create(TimeSpan dueIn, TimeSpan interval, TimerBehavior behavior);
    }
}
